package com.md.api.service;

import com.md.api.entity.HttpResult;
import com.md.api.entity.RechargeRecord;
import com.md.api.entity.TbOrder;
import com.md.api.entity.VipProperties;
import com.md.api.entity.dto.ComposeQueryDto;
import com.md.api.entity.dto.ProductBuyDto;
import com.md.api.entity.dto.ShopCartBuyDto;
import com.md.api.entity.dto.VipBuyDto;
import com.md.api.entity.util.PayResult;

import javax.servlet.http.HttpServletRequest;

/**
 * @Author liujie
 * @ClassName UserSevice
 * @Date 2022/11/9 11:34
 **/
public interface PayService {


    HttpResult productBuy(HttpServletRequest request, ProductBuyDto buyDto) ;

    HttpResult shopCartBuy(HttpServletRequest request, ShopCartBuyDto buyDto);

//    HttpResult recharge(HttpServletRequest request, RechargeRecord rechargeRecord);
    HttpResult recharge(HttpServletRequest request, TbOrder order);
//    HttpResult rechargePage(HttpServletRequest request, ComposeQueryDto composeQueryDto);

    void rechargeNotify(PayResult payResult);

    void productNotify(PayResult payResult,Boolean isCart);

    HttpResult vip(HttpServletRequest request, VipBuyDto vip);

    void vipNotify(PayResult payResult);

    HttpResult getVipPrice(HttpServletRequest request, VipBuyDto vip);
}
